summaryrefslogtreecommitdiffhomepage
path: root/packages/console/app/src/routes/zen/v1/models/[model].ts
blob: bc1168eb0c5094e5fbcff59a683ea752d1ebd3e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import type { APIEvent } from "@solidjs/start/server"
import { handler } from "~/routes/zen/util/handler"

export function POST(input: APIEvent) {
  return handler(input, {
    format: "google",
    modelList: "full",
    parseApiKey: (headers: Headers) => headers.get("x-goog-api-key") ?? undefined,
    parseModel: (url: string, _body: any) => url.split("/").pop()?.split(":")?.[0] ?? "",
    parseIsStream: (url: string, _body: any) =>
      // ie. url: https://opencode.ai/zen/v1/models/gemini-3-pro:streamGenerateContent?alt=sse'
      url.split("/").pop()?.split(":")?.[1]?.startsWith("streamGenerateContent") ?? false,
  })
}